package com.xbongbong.pro.detailtab.dto;

import com.xbongbong.paas.toolbox.wrap.BaseDTO;
import com.xbongbong.pro.detailtab.pojo.OneKeyProduceProductPojo;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;

import javax.validation.constraints.DecimalMax;
import javax.validation.constraints.DecimalMin;
import javax.validation.constraints.NotNull;
import java.util.List;

/**
 * @author feng.zheng
 * @version v1.0
 * @date 2019/2/25 13:57
 * @since v1.0
 */
@Getter
@Setter
@ToString
public class LinkAddGetDTO extends BaseDTO {
    private static final long serialVersionUID = 684372512933870588L;
    /**
     * 数据id
     */
    @NotNull(message = "{dto.msg.linkAddGet.dataIdList.NotNull}")
    private List<Long> dataIdList;
    /**
     * saas标记
     */
    @NotNull(message = "{dto.msg.linkAddGet.saasMark.NotNull}")
    @DecimalMin(value = "1", message = "{dto.msg.linkAddGet.saasMark.DecimalMin}")
    @DecimalMax(value = "1", message = "{dto.msg.linkAddGet.saasMark.DecimalMax}")
    private Integer saasMark;
    /**
     * 业务类型
     */
    @NotNull(message = "{dto.msg.linkAddGet.businessType.NotNull}")
    private Integer businessType;
    /**
     * 关联的业务类型
     */
    @NotNull(message = "{dto.msg.linkAddGet.linkBusinessType.NotNull}")
    private Integer linkBusinessType;
    /**
     * 子业务类型
     */
    private Integer subBusinessType;
    /**
     * 按钮attr,生产单退料入库还是物料入库
     */
    private String attr;
    /**
     * productList，一键生产产品传参
     */
    private List<OneKeyProduceProductPojo> linkList;
    /**
     * 来自于跳转阶段生成合同
     */
    private Integer fromGenerateBusiness;

    private Long formId;

    /**
     * 新版本（报价单专用，用于区分新版本和新建）
     */
    private Boolean newVersionAttr;
    /**
     * 发票的关联类型 1 应收款 2 回款单 3 预收款回款单
     */
    private Integer invoiceRefType;

    /**
     * 提醒id（跟进提醒专用，不为空表示是打开提醒的编辑页面）
     */
    private Long pushId;
    /**
     * 线索转换过来的,带线索id过来
     */
    private Long clueId;

    /**
     * 源业务类型 智能补货用
     */
    private Integer sourceBusinessType;
}
